package com.sugon.service.impl;

import cn.hutool.core.util.RandomUtil;
import com.sugon.dao.ModuleOptionMethodTypeDao;
import com.sugon.entity.ModuleOptionMethodTypeEntity;
import com.sugon.service.ModuleOptionMethodTypeService;
import com.sugon.utils.ShiroUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.Date;
import java.util.List;
import java.util.Map;

/**
 * 模具维护规程方法类型Service实现类
 *
 * @author sugon
 * @date 2019-09-27 09:49:37
 */
@Service("moduleOptionMethodTypeService")
public class ModuleOptionMethodTypeServiceImpl implements ModuleOptionMethodTypeService {
    @Autowired
    private ModuleOptionMethodTypeDao moduleOptionMethodTypeDao;

    @Override
    public ModuleOptionMethodTypeEntity queryObject(String id) {
        return moduleOptionMethodTypeDao.queryObject(id);
    }

    @Override
    public List<ModuleOptionMethodTypeEntity> queryList(Map<String, Object> map) {
        return moduleOptionMethodTypeDao.queryList(map);
    }

    @Override
    public int queryTotal(Map<String, Object> map) {
        return moduleOptionMethodTypeDao.queryTotal(map);
    }

    @Override
    public int save(ModuleOptionMethodTypeEntity moduleOptionMethodType) {
        moduleOptionMethodType.setId(RandomUtil.randomString(32));
        moduleOptionMethodType.setCreateUser(ShiroUtils.getUserId());
        moduleOptionMethodType.setCreateDate(new Date());
        moduleOptionMethodType.setDelFlag(1);
        return moduleOptionMethodTypeDao.save(moduleOptionMethodType);
    }

    @Override
    public int update(ModuleOptionMethodTypeEntity moduleOptionMethodType) {
        moduleOptionMethodType.setUpdateUser(ShiroUtils.getUserId());
        moduleOptionMethodType.setUpdateDate(new Date());
        return moduleOptionMethodTypeDao.update(moduleOptionMethodType);
    }

    @Override
    public int delete(String id) {
        return moduleOptionMethodTypeDao.delete(id);
    }

    @Override
    public int deleteBatch(String[] ids) {
        return moduleOptionMethodTypeDao.deleteBatch(ids);
    }
}
